package com.macro.mall.portal.domain;

import com.macro.mall.model.OmsCartItem;
import com.macro.mall.model.PmsCombinedProduct;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * Created by macro on 2018/8/27.
 * 购物车中促销信息的封装
 */
public class CartPromotionItem extends OmsCartItem{
    /**
     * 商品信息，是否组合商品
     * @author 高强
     * @Date 2020年9月17日
     */
    private List<CombinedPmsProduct> combinedPmsProduct;

    private Integer type;

    //促销活动信息
    private String promotionMessage;
    //促销活动减去的金额，针对每个商品
    private BigDecimal reduceAmount;
    //商品的真实库存（剩余库存-锁定库存）
    private Integer realStock;
    //购买商品赠送积分
    private Integer integration;
    //购买商品赠送成长值
    private Integer growth;
    //商品会员价
    private BigDecimal memberPrice;
    /**
     * 活动场次id
     */
    private Long roundId;
    /**
     * 活动场次结束时间
     */
    private Date endTime;
    /**
     * 活动价格
     */
    private BigDecimal activityPrice;

    public BigDecimal getMemberPrice() {
        return memberPrice;
    }

    public void setMemberPrice(BigDecimal memberPrice) {
        this.memberPrice = memberPrice;
    }

    public String getPromotionMessage() {
        return promotionMessage;
    }

    public List<CombinedPmsProduct> getCombinedPmsProduct() {
        return combinedPmsProduct;
    }

    public void setCombinedPmsProduct(List<CombinedPmsProduct> combinedPmsProduct) {
        this.combinedPmsProduct = combinedPmsProduct;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public void setPromotionMessage(String promotionMessage) {
        this.promotionMessage = promotionMessage;
    }

    public BigDecimal getReduceAmount() {
        return reduceAmount;
    }

    public void setReduceAmount(BigDecimal reduceAmount) {
        this.reduceAmount = reduceAmount;
    }

    public Integer getRealStock() {
        return realStock;
    }

    public void setRealStock(Integer realStock) {
        this.realStock = realStock;
    }

    public Integer getIntegration() {
        return integration;
    }

    public void setIntegration(Integer integration) {
        this.integration = integration;
    }

    public Integer getGrowth() {
        return growth;
    }

    public void setGrowth(Integer growth) {
        this.growth = growth;
    }

    public Long getRoundId() {
        return roundId;
    }

    public void setRoundId(Long roundId) {
        this.roundId = roundId;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public BigDecimal getActivityPrice() {
        return activityPrice;
    }

    public void setActivityPrice(BigDecimal activityPrice) {
        this.activityPrice = activityPrice;
    }
}
